perm filename RAND.MAC[2,LCS] blob sn#153761 filedate 1975-04-04 generic text, type T, neo UTF8
00100	;FORTRAN CALLABLE RANDOM NUMBER GENERATOR
00200	;
00300	;USE    CALL RNDINT   TO INITIALIZE THE GENERATOR
00400	;                     (THE GENERATOR IS LOADED INITIALIZED)
00500	;USE    RAND(XL,XH)   AS A FUNCTION TO RETURN THE NEXT 
00600	;                     RANDOM NUMBER BETWEEN XL AND XH
00700	;                     (XL,XH ARE FLOATING POINT,RAND RETURNS
00800	;		      FLOATING POINT)
00900	;
00910	;CALL ENDSUB CLEARS CONTROL O
01000		ENTRY RNDINT
01100	RNDINT:	0
01200		MOVE 0,[756132257563]
01300		MOVEM 0,R1
01400		ADDI 0,2
01500		MOVEM 0,R2
01600		JRA 16,0(16)
01700	R1:	756132257563
01800	R2:	756132257565
01900		ENTRY RAND
02000	RAND:	0
02100		MOVEM 1,TEMP
02200		MOVE 0,@0(16)
02300		MOVE 1,@1(16)
02400		FSBR 1,0
02500		MOVEM 0,LLIM#
02600		MOVE 0,R1
02700		ADD 0,R2
02800		EXCH 0,R2
02900		MOVEM 0,R1
03000		LSH 0,-11
03100		FSC 0,200
03200		FMP 0,1
03300		FAD 0,LLIM
03400		MOVE 1,TEMP
03500		JRA 16,2(16)
03600		ENTRY ENDSUB
03700	ENDSUB:	0
03800		SKPINC
03900		JFCL
04000		JRA	16,(16)
04100	TEMP:	0
04200		END